package com.techsoul.module.tms.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.techsoul.module.tms.pojo.entity.TPoPurchaseOrderItem;
import com.techsoul.module.tms.pojo.param.TPoPurchaseOrderItemSaveParam;
import com.techsoul.module.tms.pojo.param.TPoPurchaseOrderItemSearchParam;
import com.techsoul.module.tms.pojo.vo.TPoPurchaseOrderItemVo;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

/**
 * <p>
 * 采购订单明细表 服务类
 * </p>
 *
 * @author liuen
 * @since 2019-09-10
 */

public interface ITPoPurchaseOrderItemService {


     String insert(TPoPurchaseOrderItemSaveParam params) ;


     void delete(String id);


     void update(String id, TPoPurchaseOrderItemSaveParam params);

     TPoPurchaseOrderItem findById(String id);

     List<TPoPurchaseOrderItem> findAll() ;
     List<TPoPurchaseOrderItemVo> findAll(TPoPurchaseOrderItemSearchParam params);

     IPage<TPoPurchaseOrderItemVo> findAll(TPoPurchaseOrderItemSearchParam params, Integer currentPage, Integer pageSize);

    /**
     * 根据订单主表ID逻辑删除明细
     */
     void deleteByPurchaseOrderId(String purchaseOrderId) ;
}
